A popular and effective way of accessing television programming is via a satellite or cable television broadcast receiver or “set-top box” designed to receive television video and audio data from an orbiting satellite or a cable television headend. By employing such a set-top box, a subscriber to a satellite or cable television service provider may receive any of several hundred programming channels providing news, sports, entertainment, and the like for live program viewing. In addition, the set-top box may include a digital video recorder (DVR) for recording programs for subsequent playback at a time more convenient for the subscriber. A DVR often incorporates a magnetic disk drive or similar data storage technology for storing the recorded programs.
Incorporating a DVR in a set-top box provides the further advantage of allowing the subscriber to implement “trick modes”, which are video playback modes other than the familiar normal-speed, forward playback mode. Trick modes may include forward and reverse scanning of video at faster-than-normal speeds, forward and reverse slow-motion playback, forward and reverse frame-by-frame review, and pause, each of which is controlled by the subscriber, typically by way of a remote control device. Further, as a set-top box DVR normally records programs specifically indicated by the subscriber for later viewing, as well as programs currently being delivered or broadcast to the set-top box, the subscriber may use the trick modes on essentially any program being viewed.
To implement the forward and reverse fast-scanning modes, the DVR is often designed to display to the subscriber disjoint frames of the video program, each for a short period of time in rapid succession, so that the subscriber or user may discern the progress of the scan. To that end, the DVR or associated set-top box may generate indexing information indicating various access points into the video program being viewed at which complete video frames may be retrieved. Such information is often necessary, as video programs are typically encoded in a compressed format in which many of the video frames are encoded presuming known information about the previous or subsequent frame. Such “predicted” frames are thus typically poor candidates for presentation during a fast-scanning trick mode due to the lack of complete information being provided for that frame. At least some of the other trick modes may benefit from the use of this indexing information as well.